from object.single.engine import SingleEngine
from noflip_web.globals import engine_ins_dc


def gen_new_engine(model_name_code):
    """生成一个新的engine，值为默认"""
    if model_name_code not in engine_ins_dc["all_variable"]:
        raise ValueError("要生成引擎的模型名未收录在all_variable，逻辑错误")

    # 若为本次使用的第一次打开，虽有variable，但未初始化引擎
    engine_ins = SingleEngine()
    # 进行引擎的初始化操作
    # 从全局变量关联与本实例相关的变量
    engine_ins.variable_key = model_name_code
    engine_ins.variable_value = engine_ins_dc["all_variable"][model_name_code]
    # 引擎系列初始化操作
    engine_ins.get_process_number()

    return engine_ins



